#ifndef PHYSICS_CIRCLE_COLLIDER_H
#define PHYSICS_CIRCLE_COLLIDER_H

#include "Common/Common.h"
#include "ICircleShape.h"
#include "Box2dShape.h"

class b2CircleShape;

namespace physics {

	class Box2dCircleShape : public Box2dShape, public ICircleShape {
	public:

		Box2dCircleShape( b2CircleShape* circleShape );
		virtual ~Box2dCircleShape( );

		virtual float GetRadius( ) const;
		virtual void SetRadius( float radius );

		virtual Transform GetPos( ) const;
		virtual void SetPos( Transform pos );

		virtual const b2Shape* GetBox2dShape( ) const;

		virtual void Accept( const IShapeVisitor* visitor ) const;
	private:
		b2CircleShape* _circleShape;
	};
}
#endif
